package Dao;


import Pojo.Knn;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import javax.swing.JOptionPane;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Patricia Brito
 */
public class Arquivo {
    
    public static List<Knn> listaKnn = new ArrayList<Knn>();

    public Arquivo(){
    }
    
    public static void embaralharLista(){
        //embaralha a base de dados
        long seed = System.nanoTime();
        Collections.shuffle(listaKnn, new Random(seed));
    }
    
    public void lerArquivo(){
        try {
            listaKnn.clear();
            //replace all serve pra trocar o %20 por espaço simples. Bendito Windows!
            InputStream caminho = getClass().getResourceAsStream("entrada.txt");

            BufferedReader br = new BufferedReader(new InputStreamReader(caminho));
            String linha = br.readLine();
            while (linha != null) {
                if (!linha.isEmpty() && (linha.charAt(0) != '@') && (linha.charAt(0) != '%')) {
                    listaKnn.add(new Knn(linha.split(",")));
                }
                linha = br.readLine();
            }

            embaralharLista();
        } catch (IOException ex) {
            JOptionPane.showMessageDialog(null, "Erro ao ler arquivo de entrada");
        }
        
    }
}
